子应用

概念类似于django中的app,flask中的蓝图,主要功能现在看来是作为路由分发

示例

from fastapi import FastAPI

app = FastAPI()


@app.get("/app")
def read_main():
    return {"message": "Hello World from main app"}


subapi = FastAPI()


@subapi.get("/sub")
def read_sub():
    return {"message": "Hello World from sub API"}


app.mount("/subapi", subapi)

事件

  • startup app(主应用)启动时运行,运行结束后才能接受请求
  • shutdown app(主应用)关闭时运行,执行结束后才杀死进程

示例


@app.on_event("startup")
async def startup_event():
    print("app start")


@app.on_event("shutdown")
async def startup_event():
    print("app end")